package com.songlanyun.modules.withdraw.model.vo;

import com.baomidou.mybatisplus.annotation.TableId;
import com.songlanyun.common.drive.ValueObject;
import com.songlanyun.common.utils.custom.MathUtils;
import lombok.Data;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;

@Data
public class AccountWalletVO implements ValueObject {


    {
        balance = BigDecimal.ZERO;
        waitAccount = BigDecimal.ZERO;
        freezing = BigDecimal.ZERO;
        commissionAble = BigDecimal.ZERO;
        minExtract = BigDecimal.ZERO;
        commissionSettled = BigDecimal.ZERO;
        commissionTakeOut = BigDecimal.ZERO;
    }

    /**
     *
     */
    private Long id;
    /**
     * 钱包余额
     */
    private BigDecimal balance;
    /**
     * 待入账
     */
    private BigDecimal waitAccount;
    /**
     * 冻结中
     */
    private BigDecimal freezing;
    /**
     * 可提现金额（需要减去冻结中的佣金）
     */
    private BigDecimal commissionAble;

    /**
     * 已结算佣金
     */
    private BigDecimal commissionSettled;

    /**
     * 已提现佣金
     */
    private BigDecimal commissionTakeOut;
    /**
     * 最小提取额度
     */
    private BigDecimal minExtract;
    /**
     * 最大提取额度
     */
    private BigDecimal maxExtract;


}
